package cn.credit.ms.dbms;

import java.io.Serializable;
import java.util.Map;


/**
 * for holder named params.
 * @author Kejun
 *
 */
public final class Params<T extends Serializable> extends HMap<T> {
	private static final long serialVersionUID = 6951587204799192335L;

	public Params(){ };
	public Params(String n1, T v1){
		let(n1, v1);
	}
	public Params(String n1, T v1, String n2, T v2){
		let(n1, v1, n2, v2);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3){
		let(n1, v1, n2, v2, n3, v3);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4){
		let(n1, v1, n2, v2, n3, v3, n4, v4);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6, String n7, T v7){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6, n7, v7);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6, String n7, T v7, String n8, T v8){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6, n7, v7, n8, v8);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6, String n7, T v7, String n8, T v8, String n9, T v9){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6, n7, v7, n8, v8, n9, v9);
	}
	
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6, String n7, T v7, String n8, T v8, String n9, T v9, String s1, T p1){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6, n7, v7, n8, v8, n9, v9);
		let(s1, p1);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6, String n7, T v7, String n8, T v8, String n9, T v9, String s1, T p1, String s2, T p2){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6, n7, v7, n8, v8, n9, v9);
		let(s1, p1, s2, p2);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6, String n7, T v7, String n8, T v8, String n9, T v9, String s1, T p1, String s2, T p2, String s3, T p3){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6, n7, v7, n8, v8, n9, v9);
		let(s1, p1, s2, p2, s3, p3);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6, String n7, T v7, String n8, T v8, String n9, T v9, String s1, T p1, String s2, T p2, String s3, T p3, String s4, T p4){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6, n7, v7, n8, v8, n9, v9);
		let(s1, p1, s2, p2, s3, p3, s4, p4);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6, String n7, T v7, String n8, T v8, String n9, T v9, String s1, T p1, String s2, T p2, String s3, T p3, String s4, T p4, String s5, T p5){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6, n7, v7, n8, v8, n9, v9);
		let(s1, p1, s2, p2, s3, p3, s4, p4, s5, p5);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6, String n7, T v7, String n8, T v8, String n9, T v9, String s1, T p1, String s2, T p2, String s3, T p3, String s4, T p4, String s5, T p5, String s6, T p6){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6, n7, v7, n8, v8, n9, v9);
		let(s1, p1, s2, p2, s3, p3, s4, p4, s5, p5, s6, p6);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6, String n7, T v7, String n8, T v8, String n9, T v9, String s1, T p1, String s2, T p2, String s3, T p3, String s4, T p4, String s5, T p5, String s6, T p6, String s7, T p7){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6, n7, v7, n8, v8, n9, v9);
		let(s1, p1, s2, p2, s3, p3, s4, p4, s5, p5, s6, p6, s7, p7);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6, String n7, T v7, String n8, T v8, String n9, T v9, String s1, T p1, String s2, T p2, String s3, T p3, String s4, T p4, String s5, T p5, String s6, T p6, String s7, T p7, String s8, T p8){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6, n7, v7, n8, v8, n9, v9);
		let(s1, p1, s2, p2, s3, p3, s4, p4, s5, p5, s6, p6, s7, p7, s8, p8);
	}
	public Params(String n1, T v1, String n2, T v2, String n3, T v3, String n4, T v4, String n5, T v5, String n6, T v6, String n7, T v7, String n8, T v8, String n9, T v9, String s1, T p1, String s2, T p2, String s3, T p3, String s4, T p4, String s5, T p5, String s6, T p6, String s7, T p7, String s8, T p8, String s9, T p9){
		let(n1, v1, n2, v2, n3, v3, n4, v4, n5, v5, n6, v6, n7, v7, n8, v8, n9, v9);
		let(s1, p1, s2, p2, s3, p3, s4, p4, s5, p5, s6, p6, s7, p7, s8, p8, s9, p9);
	}	
	
	@Override
	public Params<T> put(Map<String,T> map){
		super.put(map); return this;
	}
//
//	@Override
//	public Params<T> add(Map<String,Object> map){
//		super.add(map); return this;
//	}

}
